Release 3.2  Copyright ã1993 by NeXT Computer, Inc.  All Rights Reserved.

11	NeXT Computers in a Mixed Network

If you already have a network of computers at your site, you can connect your NeXT computers to the existing network and share files or printers. NeXT computers can communicate with existing UNIX, AppleTalk, and Novell NetWare networks. This chapter covers the procedures needed to incorporate a NeXT computer in a mixed network. It also discusses the use of DNS, ISDN, and SNMP.

UNIX Networks

Since NeXT computers are compatible with the BSD 4.3 version of UNIX, they easily connect to other UNIX computers. In order to communicate with an existing UNIX network, that network must be using TCP/IP over Ethernet. The examples used here assume the non-NeXT computers are running a version of UNIX that is also compatible with BSD 4.3. 

If your non-NeXT computers run some other variation of UNIX, you'll need to make adjustments to the procedures. If you're not the administrator of the existing non-NeXT UNIX network, make sure you involve that administrator in these procedures. 

In addition, the procedures in this section assume a two-level NetInfo domain hierarchy. If you're incorporating a network with a multilevel NetInfo domain hierarchy, consider carefully which domain to use to store the various administrative information.

Planning

Before you jump in and begin incorporating your NeXT computers into an existing UNIX network, you need to find out how the existing network is administered and make some decisions about how the combined network will be maintained. 

Network Services

The first thing you should do is determine what your goals are for the combined network. Ask yourself what administrative information you want to maintain across NeXT computers and the other UNIX computers. Decide which features you want users to be able to access. Here's a list of some possibilities:

·	Host informationÐAt a minimum, you'll want to make sure that each computer has access to host information about all the other computers. Without this information, any kind of network communication requires knowing the Internet address of the remote computer, and which other network services you can provide are limited. 

·	Shared file systemsÐAre there any file systems that you want users to be able to access from both NeXT computers and non-NeXT computers? Are there directories that should only be available to NeXT computers, or only to non-NeXT computers? Make a list of each.

·	Users and groupsÐDo you want users to be able to log into any computer on the network, or will you restrict access to specific computers? If you're going to share file systems, you'll probably want to set up network-wide user accounts and user groups as well. 

·	Mail aliasesÐDo you want your mail aliases to be consistent across all computers?

·	Mail serviceÐDo you want to have one computer be the mail server for the entire network, or will you use multiple mail servers? If you will only use one mail server, will you use a NeXT computer for that purpose, or one of the non-NeXT computers?

·	PrintingÐAre there printers attached to NeXT computers that you want to make available to the non-NeXT computers? Are there printers attached to the non-NeXT computers that you want to make available to the NeXT computers?

Existing UNIX Administration

When you're incorporating NeXT computers into an existing UNIX network, your biggest concern is making sure that the administrative data is consistent across all computers. How you make this happen depends on what scheme is being used on the existing network. The most likely situations are:

·	IndividualÐEach computer on the UNIX network maintains its own set of administrative files: /etc/hosts, /etc/passwd, /etc/group, /etc/aliases, and so on.

·	DistributedÐThe administrative files are maintained on a central information server, and copies are made to the other computers at regular intervals. The information server might use NIS (Network Information Service) to maintain the administrative data.

NetInfo Administration

Once you've determined how the other UNIX computers maintain administrative data, you need to decide how that information will be maintained on your NeXT computers. 

·	NetInfo and configuration serverÐThis is the easiest way to maintain administrative data for your NeXT computers, just as it would be if the NeXT computers were connected in an isolated network. If you're connecting an existing NetInfo network to another UNIX network, you'll already have a NetInfo and configuration server for your NeXT computers.

·	No NetInfo and configuration serverÐIf you're connecting a single NeXT computer to an existing UNIX network, there's no need to set up a master NetInfo and configuration server. If you have more than one NeXT computer, you can set them up without a master server. However, administration will be easier if you maintain administrative data for the NeXT computers with a master NetInfo server.

·	NISÐIf the non-NeXT computers are using NIS to maintain administrative data, you might decide to set up your NeXT computers as NIS clients. With this scheme, all computers on the combined network get their administrative data from the same source.

Combined Administration

Now that you know how the non-NeXT computers maintain their administrative data, and you've decided how your NeXT computers will maintain theirs, you need to decide how the two sets of data will be kept consistent. Several possibilities are:

·	NetInfo as the masterÐAll administrative changes (adding hosts, adding users and groups, creating mail aliases, changing passwords) are performed with NetInfo. Then the information is copied from NetInfo to the non-NeXT computers. The non-NeXT computers might use NIS to maintain the data.

·	Non-NeXT as the masterÐAll administrative changes are performed on the non-NeXT computers, then the information is copied into NetInfo for the NeXT computers. The administrative data for the non-NeXT computers might come from NIS. 

·	NISÐAdministrative changes are handled with NIS for the entire combined network. In this situation, the NIS master server can be a NeXT computer or one of the non-NeXT computers. 

·	IndependentÐAdministrative changes are made anywhere. This scheme isn't recommended. When the administrative information is combined, it's almost impossible to determine which data is accurate. For example, is the user account information for the user tom on the NeXT computers the correct data, or is it the user account stored on the non-NeXT computers? What if tom changes his password while logged into a NeXT computer one month, then changes it while logged into a non-NeXT computer the next? As you can see, allowing changes to be made on both the NeXT and non-NeXT computers can create an administrative nightmare.

Setting Up the NeXT Computers

If you're incorporating an existing NetInfo network, you can skip this section. If you're going to have a NetInfo and configuration server for your NeXT computers, set up the network following the instructions in Chapter 2, ªSetting Up a NetInfo Network,º or Chapter 10, ªConfiguring a Large Network.º If you want to set up your NeXT computers without a NetInfo and configuration server, follow these procedures for each NeXT computer:

1.	Start up the computer you want to add. If it's already physically connected to the existing UNIX network, a window appears with the following message:

No response from network configuration server.
Type 'Ctrl-c' to start up computer without a network connection.

Type Control-c to continue the boot process without connecting to the network.

2.	Start up HostManager, located in /NextAdmin. If you're not logged in as root, HostManager displays a panel telling you that you must have superuser status to run this application. Enter the password for the root account and click Login.

3.	Open the Local Configuration window by choosing Local from the main menu.

4.	Set the host name of the local system by clicking the button next to the text field under Hostname. Enter the host name of this computer in the text field.

5.	Set the Internet address of the local system by clicking the switch next to the text field under Internet Address. Edit the default address to be the address you want the computer to have. Make sure the number is unique and compatible with the Internet addresses used for the existing UNIX network. For more information, see Appendix C, ªInternet Addressing.º

6.	Click Use Local Domain Only under NetInfo Binding. This prevents the host from looking for a parent NetInfo domain. 

,

7.	Click the Set button to save the changes you've just made.

8.	Since you're disabling the link between the local and parent NetInfo domains, HostManager presents a panel requiring you to confirm that you want to proceed. Click OK to proceed.

,

9.	HostManager then scans the local NetInfo domain for all connections to the parent domain. As it finds each one, you must confirm that you want to break the connection. In this case, only a confirmation panel for broadcasthost should appear. Click OK to proceed. 

,

10.	You must restart the computer in order for the new host name and address to be configured. Click OK in the Reboot Confirmation panel that appears.

,

11.	If you're configuring multiple NeXT computers without a NetInfo and configuration server, you must use HostManager to add a host entry on each NeXT computer for each of the other NeXT computers:

a.	Start up HostManager.

b.	Choose New from the Host menu.

c.	Enter the host name, Internet address, and Ethernet address for one of the other NeXT computers.

d.	Choose Save from the Host menu.

e.	In the panel that appears, click ªThis is host's parent domainº to uncheck it. 

,

f.	Click OK.

g.	Repeat for each of the other NeXT computers.

This computer is now connected to a non-NetInfo network, and it has access to host information for any other NeXT computers. If you have multiple NeXT computers without a NetInfo and configuration server, repeat this procedure for each.

Setting Up Consistent Administrative Data

With your NeXT and non-NeXT computers physically connected in a network, you're ready to combine the administrative data. The procedures in this section make sure that all the computers on the combined network initially have access to the same information. Once you've combined the initial administrative information, you need to set up procedures that will make sure that any future changes (new hosts, users, groups, and so on) will be made available to all computers. 

Note:  These procedures only cover hosts, users, groups, and mail aliases. If you want to share other administrative information, modify the procedures as needed.

Host Information

The first information you'll want to combine is the host information. This allows all the computers to identify each other, and permits setting up additional network services.

1.	Log in as root on your NetInfo and configuration server. If you aren't using a NetInfo and configuration server, log into one of the NeXT computers. 

2.	Copy the host information for your NeXT computers into a file by entering the following command in a shell window:

nidump hosts / > nexthosts

This command dumps the host information from the NetInfo database and places it in a file named nexthosts. You'll use this file later to update the non-NeXT computers.

3.	If the non-NeXT information server is an NIS master, use ypcat to create a file containing the host information for the non-NeXT computers.

4.	Use a file transfer program such as ftp to transfer a copy of the file /etc/hosts (or the file you created with ypcat) from the non-NeXT information server to your NeXT computer, naming the copy something like otherhosts. Since your NeXT computer doesn't yet have access to the host name of the non-NeXT computer, you need to use its Internet address when making the connection with ftp.

5.	Use Edit to delete any lines in otherhosts that reference localhost or broadcasthost. If you find any other entries that conflict with the NeXT host informationÐduplicate host names or Internet addressesÐyou'll need to use HostManager to change the host information for your NeXT computers. Remember that the host names and Internet addresses must be unique.

6.	Load the host information into your NetInfo domain by entering the following command into a shell window:

niload hosts / < otherhosts

Now the NeXT computers have access to host information for all the NeXT and non-NeXT computers on the network. If you're using multiple NeXT computers without a NetInfo and configuration server, repeat steps 4 through 6 on each NeXT computer.

Note:  You can use HostManager to add non-NeXT hosts to NetInfo instead of these procedures. However, it's usually more convenient to use niload unless you have only one or two hosts to configure.

7.	Make host information about the NeXT computers available to the non-NeXT computers, using whatever procedures are normally used to add hosts to the existing UNIX network. If you prefer, you can use the following procedure, which might be easier than adding individual host entries.

a.	Edit nexthosts to remove entries for localhost and broadcasthost and to make sure there are no conflicts with the host information for the non-NeXT computers. 

b.	Use a file transfer program such as ftp to copy nexthosts to the non-NeXT information server. If there isn't a non-NeXT information server, copy the file to each non-NeXT computer in turn.

c.	Log into the non-NeXT computer(s) as root and append the contents of nexthosts to /etc/hosts (or other file, as appropriate), making sure that you end up with entries for all computers, NeXT and non-NeXT.

d.	If the non-NeXT information server is an NIS master server, enter the appropriate commands to update the NIS maps. For example, the following commands will work in some situations:

cd /var/yp
make

All computers on the network, both NeXT and non-NeXT, now have access to host information for all the other computers.

User Account and Group Information

If there are any user accounts on either the non-NeXT computers or the NeXT computers that you want to make available to the combined network, you'll need to combine the user account and group information from both. In order for a user account to be available network-wide, the user's home directory must be on a shared file system available to the combined network. 

Preparing NeXT User Accounts

Network user accounts on NeXT computers usually have their home directory on a shared file system that is mounted under /Net. Since this isn't a universal convention, non-NeXT computers might not mount shared file systems in the same way. If there are any existing NeXT user accounts that you want to make available to the combined network, you must first modify them. If you don't have any existing user accounts on the NeXT computer that you want to make available to the combined network, you can skip this section.

1.	Log into the NeXT home directory server as root and start up UserManager. 

2.	Choose Open User from the User Record menu. In the Open in NetInfo Domain panel, click the appropriate domain, then click the user you want to make available to the combined network. Click OK.

3.	Modify the Home Directory field so that the path of the home directory is appropriate for a shared file system on the combined network. For example, if the home directory is /Net/earth/Users/mary, you might modify the field to read /Users/mary. 

,

Note:  If you have multiple home directory servers, you'll need to mount each remote directory in a different place. For example, you might create a directory named /Homes on each computer, then mount the various home directories under it, perhaps as /Homes/server/Users. Make sure that you're consistent on all computers. See Chapter 4, ªSetting Up the Network File System,º for more information.

4.	Choose Save from the User Record menu. Review the information in the attention panel that appears, then click OK.

5.	Click Yes in the panel that appears to create a new home directory for the user.

6.	Quit UserManager.

7.	Start up NFSManager. Choose Import To from the main menu. In the Select NetInfo Domain panel that appears, click ª/º in the left column, then click OK.

8.	In the list of imported directories, click the directory that's used for home directories. 

,

9.	Modify the Mount point field so that it isn't mounted under /Net. For example, if the mount point is /Net/earth/Users, modify the field to read /Users, or maybe /Homes/server/Users. Click OK. 

,

10.	Repeat these steps for each NeXT user account.

11.	Copy the user account information into a file by entering the following command in a shell window:

nidump passwd / > nextusers

This command dumps the user account information from the NetInfo database and copies it into a file named nextusers. You'll use this file later to update the non-NeXT computers.

12.	Copy the group information into a file by entering the following command in a shell window:

nidump group / > nextgroups

This command dumps the group information from the NetInfo database and copies it into a file named nextgroups. You'll use this file later to update the non-NeXT computers.

Combining User and Group Information

Now transfer the user and group information.

1.	If the non-NeXT information server is a master NIS server, log into the NIS master server and use ypcat to create files containing the user account and group information.

2.	Log into the NetInfo master server as root. If you aren't using a NetInfo server, log into one of the NeXT computers.

3.	Use a file transfer program such as ftp to transfer a copy of the files /etc/passwd and /etc/group (or the files you created with ypcat) from the non-NeXT information server to your NeXT computer, naming the copies something like otherusers and othergroups. 

4.	Use Edit to delete any user accounts in otherusers that already exist on the NeXT computer(s)Ðroot, for example. If you find any other entries that conflict with the NeXT user informationÐduplicate user names or user IDsÐyou'll need to use UserManager to change the user account information on your NeXT computers. Remember that the user names and user IDs must be unique.

5.	Use Edit to delete any groups in othergroups that already exist on the NeXT computer(s). If you find any entries that conflict with the NeXT group informationÐduplicate group names or group IDsÐyou'll need to use UserManager to change the group information on your NeXT computers. Remember that the group names and group IDs must be unique.

6.	Load the user and group information into your NetInfo domain by entering the following commands in a shell window:

niload passwd / < otherusers
niload group / < othergroups

Now the NeXT computers have access to user account and group account information from the non-NeXT computers. If you're using multiple NeXT computers without a NetInfo and configuration server, repeat steps 3 through 6 on each NeXT computer.

Note:  You can use UserManager to add user account and group information to NetInfo instead of these procedures. However, it's usually more convenient to use niload unless you only have one or two user and group accounts to add. 

7.	If you have existing user or group accounts on the NeXT computers, make the information available to the non-NeXT computers:

a.	Edit nextusers to remove entries for any accounts that already exist on the non-NeXT computers, such as root, and to make sure there are no conflicts with the existing non-NeXT user accounts. 

b.	Edit nextgroups to remove entries for any groups that already exist on the non-NeXT computers, and to make sure there are no conflicts with the existing non-NeXT groups. 

c.	Use a transfer program such as ftp to copy nextusers and nextgroups to the non-NeXT information server. If you aren't using a non-NeXT information server, copy the file to each non-NeXT computer in turn.

d.	Log into the non-NeXT computer(s) and merge the contents of nextusers with /etc/passwd, and the contents of nextgroups with /etc/group.

e.	If the non-NeXT information server is an NIS master server, enter the appropriate commands to update the NIS maps.

Mail Aliases 

If you currently have mail aliases defined on either the NeXT or non-NeXT computers, you'll need to make these aliases available to the combined network so that mail will work properly.

1.	Log into your NetInfo and configuration server as root. If you're not using a NetInfo and configuration server, log into any NeXT computer.

2.	If you have existing aliases on your NeXT computers that you want to make available to the rest of the network, copy the alias information into a file with the following command:

nidump aliases / > nextaliases

3.	If the non-NeXT information server is a master NIS server, log into that server and use ypcat to create a file containing the alias information.

4.	Transfer a copy of the file /etc/aliases (or the file you created with ypcat) from the non-NeXT information server to the NeXT computer.

5.	Use Edit to delete any aliases that are duplicated in NetInfo. 

6.	Load the aliases information into your NetInfo domain by entering the following command in a shell window:

niload aliases / < otheraliases

7.	If you have existing aliases on the NeXT computers that you want to make available across the combined network, you need to transfer them.

a.	Edit nextaliases to remove any aliases that are already defined on the non-NeXT computers.

b.	Use a file transfer program such as ftp to transfer nextaliases to the non-NeXT information server. If you don't have a non-NeXT information server, transfer the file to each non-NeXT computer in turn.

c.	Append the contents of nextaliases to /etc/aliases.

d.	If the non-NeXT information server is an NIS server, enter the appropriate commands to update the NIS maps.

Shared Files

You can share directories across the entire combined network using NFS. If you're using network-wide user accounts, you'll have to set up a shared directory to hold the home directories.

Sharing a NeXT File

Follow these steps to make a directory exported from a NeXT file server available to the non-NeXT computers:

1.	Use NFSManager to make sure that the exported directory is available to the non-NeXT computers. For more information on exporting directories with NFSManager, see Chapter 4, ªSetting Up the Network File System.º

2.	Use NFSManager to make sure that the exported directory is mounted somewhere other than under /Net on the NeXT computers. Since /Net is not a universal convention, mounting a directory here may be inconsistent with the non-NeXT computers.

3.	Edit /etc/fstab on each non-NeXT computer to include the mount information for the directory exported from the NeXT computer. An entry will look something like this:

server:/directory /mountpoint nfs ro,bg,intr,nosuid 0 0

In this entry, server is the host name of the NeXT computer exporting the directory directory, and /mountpoint is where the directory will appear on the non-NeXT computer. For more information about this entry, including the options, see the UNIX manual pages for mount and fstab.

4.	If necessary, use the mkdir command to create the mount point directory on the non-NeXT computer.

Note:  Since there are variations in the NFS configuration procedures for different types of non-NeXT computers, check the requirements for your particular site for specific NFS configuration information.

Sharing a Non-NeXT File

Follow these steps to make a directory exported from a non-NeXT file server available to your NeXT computers:

1.	Edit the file /etc/exports on the non-NeXT file server to make sure the entry for the exported directory allows access to the NeXT computers. For more information, see the UNIX manual pages for exports and exportfs.

2.	Use NFSManager on the NeXT computers to mount the remote directory. In order for the remote directory to be consistent across the combined network, don't mount it under /Net. For more information, see Chapter 4.

Mail Service

In order for mail to operate correctly, you need to coordinate mail service for the entire combined network. You can set up a single mail serverÐeither a NeXT computer or a non-NeXT computerÐor you can use multiple servers. This section describes how to set up a single mail server. 

Using a Non-NeXT Mail Server

Follow these procedures to use an existing non-NeXT mail server for the combined network:

1.	If you have a NeXT computer that's set up as a mail server, follow these steps to turn it into a mail client:

a.	Log into the NeXT mail server. Start up HostManager, then choose Open from the Host menu.

b.	Choose the root domain by clicking ª/º in the top half of the Open in NetInfo Domain window, then click the host name of the NeXT mail server in the bottom half. Click OK.

,

c.	Click mailhost in the Host Name Aliases list, then click the Remove button below the list. Choose Save from the Host menu.

d.	Start up NetInfoManager. 

e.	In the local domain window, click /locations, then click sendmail. 

,

f.	Choose Delete from the Domain menu, then click Delete Anyway in the attention panel that appears.

g.	Start up NFSManager. In the Exported Directories window, click /LocalLibrary/Images/People, then click the Remove button. Remove the entry for /usr/spool/mail as well.

h.	If there are any files in /usr/spool/mail on the NeXT mail server containing mail, transfer these files to /usr/spool/mail on the non-NeXT mail server. (Don't overwrite any existing filesÐmerge them instead.)

i.	Log into the non-NeXT information server and edit /etc/hosts to remove mailhost from the entry for the NeXT mail server. If the non-NeXT information server is an NIS master server, remake the maps. If there isn't a non-NeXT information server, modify the hosts file on each non-NeXT computer.

2.	Start up HostManager and open the host entry for the non-NeXT mail server.

3.	Verify that the non-NeXT mail server includes mailhost as a host name alias. If it doesn't, add the alias mailhost. 

4.	Log into the non-NeXT mail server as root, and create a directory named /LocalLibrary/Images/People. This directory is used by NeXTmail to store alias and mail picture files.

5.	In /LocalLibrary/Images/People, create a file named passwd that contains a copy of the combined user account database, and another named aliases that contains a copy of the combined mail aliases database. If you want your NeXT users to have mail pictures, create TIFF images following the instructions in Chapter 6, ªManaging Electronic Mail,º and store them in the same directory. If you already have mail picture files on a NeXT computer, simply transfer them to the non-NeXT mail server.

Note:  In order for NeXTmail to have access to current aliases, the files in /LocalLibrary/Images/People must be updated whenever a new user or alias is added. See ªMaintaining Consistent Administrative Dataº later in this chapter.

6.	Open /etc/exports. Make sure that /usr/spool/mail is exported so that the NeXT computers will have access to it. Add an entry for /LocalLibrary/Images/People.

7.	Log into one of the NeXT computers and start up NFSManager. Choose Import To from the main menu, then click ª/º in the Select in NetInfo Domain panel. If you don't have a master NetInfo server, select the local domain. Click OK.

8.	If you already had a NeXT mail server configured, there will be entries for /usr/spool/mail and /LocalLibrary/Images/People in this list. Remove both.

9.	Click the Add button. In the panel that appears, enter the host name of the non-NeXT mail server in the Server name field, and enter /usr/spool/mail in the Remote directory field. Click OK. 

,

10.	Enter /usr/spool/mail in the ªMount pointº field. Adjust the pop-up lists, if necessary, so that the directory will be mounted read/write and in foreground. Click OK.

11.	Click the Add button. In the panel that appears, enter the host name of the non-NeXT mail server in the Server name field, and enter /LocalLibrary/Images/People in the Remote directory field. Click OK. 

12.	Enter /LocalLibrary/Images/People in the ªMount pointº field. Adjust the pop-up lists, if necessary, so that the directory will be mounted read/write and in foreground. Click OK. 

,

13.	Reboot all the NeXT computers so that they will be mail clients of the non-NeXT mail server.

Using the NeXT Mail Server

Follow these procedures to use the existing NeXT mail server as the mail server for the entire combined network.

1.	Log into the non-NeXT mail server as root.

2.	Have the former mail server use the correct sendmail configuration file, probably by making sendmail.cf a copy of, or link to, some other configuration file.

3.	If there are any files in /usr/spool/mail on the non-NeXT mail server containing mail, copy these files to /usr/spool/mail on the NeXT mail server. (Don't overwrite any existing mail files Ðmerge them instead.)

4.	Remove the entry for /usr/spool/mail from /etc/exports.

5.	Log into the non-NeXT information server and edit /etc/hosts to remove mailhost from the entry for the non-NeXT mail server. Add mailhost to the entry for the NeXT mail server, if necessary. If the non-NeXT information server is an NIS master server, remake the maps. If there isn't a non-NeXT information server, make the same modifications to /etc/hosts on each non-NeXT computer in turn.

6.	Modify the contents of /etc/fstab so that /usr/spool/mail is mounted from the NeXT mail server.

7.	Reboot all the non-NeXT computers so that they become mail clients of the NeXT mail server.

8.	Log into a NeXT computer and use HostManager to remove the alias mailhost from the entry for the non-NeXT mail server.

Printers

With a combined network, you can allow the NeXT computers to access printers attached to the non-NeXT computers, and the non-NeXT computers to access printers attached to the NeXT computers. Keep in mind that accessing a non-PostScript printer from a NeXT computer is only useful for printing ASCII text with a UNIX command. Accessing a NeXT printer from a non-NeXT computer is only useful for applications that produce PostScript output.

Using Non-NeXT Printers from a NeXT Computer

To configure a non-NeXT printer for use from a NeXT computer, use the following procedures:

1.	Set the appropriate permissions to permit access to the remote printer. This usually involves entering the host names of your NeXT computers in /etc/hosts.lpd on the non-NeXT print server. 

2.	Log into one of the NeXT computers and create a file named something like yourprintcap containing an entry similar to the following: 

PrinterName|alias:\
    :lp=:rm=remotehost:rp=remoteprinter:\
    :sd=/usr/spool/NeXT/PrinterName:\ 
    :ty=printertype:

Here's a description of the variables used in this example: 

·	PrinterNameÐName that will appear in the Print panel on the NeXT computers 

·	aliasÐOptional alias for the remote printer

·	remotehostÐHost name of the remote print server

·	remoteprinterÐName of the printer as it appears in /etc/printcap on the remote system

·	printertypeÐComment string that will appear in the Print panel under Type; usually describes the type of printer (ªPostScript,º for example)

For more information, see the UNIX manual page for printcap.

3.	Load the file yourprintcap into your NetInfo domain by entering the following command in a shell window as root (if you want to load this information into a different domain, replace ª/º with ª.º or ª..º as appropriate):

niload printcap / < yourprintcap

4.	Restart the NeXT computer(s). This starts lpd print daemons for the remote printers. 

Using NeXT Printers from a Non-NeXT Computer

To configure a printer attached to a NeXT computer for use from non-NeXT computers, use the following procedures:

1.	Log into the NeXT print server and add the host names of the non-NeXT computers to /etc/hosts.lpd. 

2.	Log into each non-NeXT computer in turn and add an entry to /etc/printcap that looks something like this: 

PrinterName|alias:\
    :lp=:rm=remotehost:rp=remoteprinter:\
    :sd=/usr/spool/lpd/PrinterName:\ 
    :ty=printertype:

Here's a description of the fields used in this example:

·	PrinterNameÐName the non-NeXT computers will use to access the printer
·	aliasÐOptional alias for the printer
·	remotehostÐHost name of the NeXT print server
·	remoteprinterÐName of the printer as listed in the NetInfo /printers directory
·	printertypeÐComment string that usually describes the type of printer (ªPostScript,º for example) 

3.	Create a spool directory on each non-NeXT computer, as specified in the sd parameter of the printcap entry for the NeXT printer. You will need one spool directory for each printer you add.

cd /usr/spool/lpd
mkdir Printername
chmod 770 Printername
chown daemon.daemon Printername

Note:  Some UNIX systems require that you set additional permissions on the spool directory. Check the requirements of your particular site.

4.	Restart the non-NeXT computers. This starts lpd print daemons for the remote printers. 

Maintaining Consistent Administrative Data

Now that you've given all your computers access to an initial set of consistent administrative data, you'll need to implement a scheme that will maintain this data. In order to avoid an administrative nightmare, you should choose a master administrative service, and then make changes using only that service. For example, you might decide to use the NetInfo manager applications to add all new hosts, users, groups, and mail aliases, then distribute that information to the non-NeXT computers. 

There are five different administration schemes discussed in this section:

·	NetInfo as master service, non-NeXT computers maintain individual flat files

·	NetInfo as master service, non-NeXT information server distributes data to the other computers

·	NetInfo as master service, NIS master server maintains data for the non-NeXT computers

·	Non-NeXT information server as master service (with or without NIS), NetInfo maintains data for the NeXT computers

·	NIS maintains data for the entire combined network

Important:  The procedures in this section should only be considered guidelines. Some important considerations to note are:

·	The procedures used on the non-NeXT computers at your site may require that you modify the suggestions. For example, if your NIS master server uses flat files stored somewhere other than /etc to make its maps, you'll need to modify the distribution script. 

·	Only the administrative information for hosts, users, groups, and mail aliases is covered. Similar procedures can be used for any other administrative data you want to share.

·	The examples assume that the non-NeXT UNIX computers have access to rsh and rcp.

·	All the examples distribute complete administrative data every 15 minutes. If you have a large number of computers, or a large amount of administrative information, distributing the data every 15 minutes can degrade network performance. Some administrative data changes more frequently than others (the user account information changes when a user changes a password, host information only changes when a new computer or host alias is added to the network). Consider carefully whether to distribute information less frequently, or even set up multiple scripts to distribute the different types of data separately, and run each at different intervals.

Distributing Data from NetInfo to Multiple Non-NeXT Computers

If you're using NetInfo as your master administrative service, you need to copy administrative data out of the NetInfo database to the non-NeXT computers. The procedures in this section apply when data is maintained individually on the non-NeXT computers.

1.	On each non-NeXT computer, edit /.rhosts to include the host name of the master NetInfo server. This allows the NeXT computer to access the non-NeXT computer and execute commands as root.

2.	Log into the master NetInfo server as root.

3.	Use Edit to create a file named something like /etc/pushinfo containing the following lines, replacing host1... host4 with the host names of the non-NeXT computers: 

CLIENTS='host1 host2 host3 host4'
nidump passwd / > /etc/passwd
nidump group / > /etc/group
nidump hosts / > /etc/hosts
nidump aliases / > /etc/aliases
for HOST in $CLIENTS
do
    rcp /etc/passwd $HOST:/etc/passwd
    rcp /etc/group $HOST:/etc/group
    rcp /etc/hosts $HOST:/etc/hosts
    rcp /etc/aliases $HOST:/etc/aliases
done

4.	Edit /usr/lib/crontab.local (create it, if necessary) and add a line similar to the following:

0,15,20,45 * * * * root /etc/pushinfo

This entry runs the script /etc/pushinfo as root every 15 minutes.

Distributing Data from NetInfo to a Non-NeXT Information Server

If you've chosen to use NetInfo as the master administrative service, and you have a non-NeXT information server, administrative data needs to be distributed from NetInfo to the non-NeXT information server.

1.	On the non-NeXT information server, edit /.rhosts to include the host name of the master NetInfo server. This allows the NeXT computer to access the non-NeXT computer and execute commands as root.

2.	Log into the master NetInfo server as root.

3.	Use Edit to create a file named something like /etc/pushinfo containing the following lines, replacing otherserver with the host name of the non-NeXT information server.

HOST='otherserver'
nidump passwd / > /etc/passwd
nidump group / > /etc/group
nidump hosts / > /etc/hosts
nidump aliases / > /etc/aliases
rcp /etc/passwd $HOST:/etc/passwd
rcp /etc/group $HOST:/etc/group
rcp /etc/hosts $HOST:/etc/hosts
rcp /etc/aliases $HOST:/etc/aliases

4.	Edit /usr/lib/crontab.local and add a line similar to the following:

0,15,20,45 * * * * root /etc/pushinfo

This entry runs the script /etc/pushinfo as root every 15 minutes.

Distributing Data from NetInfo to NIS 

If you've chosen NetInfo as your master administrative service, and NIS is used to maintain data for the non-NeXT computers, you'll need to copy data from NetInfo to the NIS server.

1.	On the non-NeXT master NIS server, edit /.rhosts to include the host name of the NeXT computer that distributes data. This allows the NeXT computer to access the non-NeXT computer and execute commands as root.

2.	Log into the master NetInfo server as root.

3.	Use Edit to create a file named something similar to /etc/pushinfo and containing the following lines, replacing nis_server with the host name of the NIS master server, and commands to make the NIS maps with whatever commands are appropriate at your site:

HOST='nis_server'
nidump passwd / > /etc/passwd
nidump group / > /etc/group
nidump hosts / > /etc/hosts
nidump aliases / > /etc/aliases
rcp /etc/passwd $HOST:/etc/passwd
rcp /etc/group $HOST:/etc/group
rcp /etc/hosts $HOST:/etc/hosts
rcp /etc/aliases $HOST:/etc/aliases
rsh $HOST "commands to make NIS maps"

4.	Edit /etc/crontab.local and add a line similar to the following:

0,15,20,45 * * * * root /etc/pushinfo

This entry distributes information to the NIS server every 15 minutes.

Using a NeXT Computer as the Master NIS Server

If you have chosen to use NetInfo as the master administrative service, and the non-NeXT computers use NIS to maintain information, you can centralize all your administrative information on one computer by configuring the master NetInfo server to be the master NIS server as well.

To configure a NeXT computer as an NIS master server:

1.	Follow the instructions in your NIS documentation to make the existing non-NeXT NIS master server be a slave server, and one of your NeXT computers the master server for the NIS domain.

2.	Log into the new NeXT NIS master server and create a file named something like /etc/pushinfo containing the following lines:

nidump passwd / > /etc/passwd
nidump group / > /etc/group
nidump hosts / > /etc/hosts
nidump aliases / > /etc/aliases
cd /etc/yp
make

3.	Add a line to /etc/crontab.local (create it, if necessary) similar to the following:

0,15,20,45 * * * * root /etc/pushinfo

This entry loads information into NIS every 15 minutes. Consider whether you should distribute less frequently, or distribute the different kinds of information separately.

Distributing Data from a Non-NeXT Server to NetInfo

If you've chosen to perform administrative tasks on the non-NeXT computers, and use a master NetInfo server to maintain the data for the NeXT computers, you'll need to distribute administrative data to the NetInfo server. The procedures in this section work whether the non-NeXT information server uses flat files or NIS to administer data. 

1.	Edit the file /.rhosts on the NetInfo and configuration server so that it includes the host name of the non-NeXT computer that will distribute information.

2.	Log into the non-NeXT information server and create a file named something like /etc/pushinfo containing the following lines. Replace nextserver with the host name of the master NetInfo server.

HOST='nextserver'
rcp /etc/passwd $HOST:/etc/passwd
rcp /etc/group $HOST:/etc/group
rcp /etc/hosts $HOST:/etc/hosts
rcp /etc/aliases $HOST:/etc/aliases
rsh $HOST "niload passwd / < /etc/passwd"
rsh $HOST "niload passwd / < /etc/passwd"
rsh $HOST "niload passwd / < /etc/passwd"
rsh $HOST "niload passwd / < /etc/passwd"

3.	Edit /etc/crontab (or other appropriate cron file) and add a line similar to the following:

0,15,20,45 * * * * root /etc/pushinfo

This entry distributes information to the NeXT computer every 15 minutes. Consider whether you should distribute less frequently, or distribute the different kinds of information separately.

NeXT as NIS Clients

If your non-NeXT information server is an NIS master server, you might decide to have all the NeXT computers be clients of NIS. Once configured as an NIS client, any requests for administrative data, such as user account information, are first sent to NetInfo. If the information isn't found there, the request is sent on to NIS. If you use NIS as your master information server for the combined network, you don't need to set up a script to distribute data, since NIS does that itself.

Perform the following steps on each NeXT computer to make them NIS clients:

1.	Start up your NeXT computer and log in as root.

2.	Edit the files /etc/passwd and /etc/group to add the characters ª+:º as the last line in each file. These characters tell the NeXT computer to use the NIS user and group information. For example, the last few lines of the /etc/passwd file might resemble this: 

sybase:*:8:8:Sybase Administrator:/usr/sybase:/bin/csh
me::20:20:My Account:/me:/bin/csh
+:

3.	Start up SimpleNetworkStarter and click Other Options.

4.	Click the button next to the text field under NIS Domain Name. Enter the name of the NIS domain in the text field. 

,

5.	Click the OK button.

6.	Click Configure this Host.

Tip:  You can probably improve network performance by following the instructions in your NIS documentation to set up one of your NeXT computers as an NIS slave server.

Considerations

A few important points to consider while working in a combined network are covered in this section.

Using Mail

When you have a network made up of NeXT and non-NeXT UNIX computers, mail becomes an issue in two ways. First, any attachments to mail messages created with NeXTmail, such as graphics or voice, can't be read on a non-NeXT computer. Users sending mail from a NeXT computer should be warned of this, so they don't distribute unreadable mail to users on the non-NeXT computers.

Second, incoming mail for users is temporarily stored in /usr/spool/mail on both NeXT and non-NeXT UNIX computers. However, standard UNIX mail copies the mail into a file named mbox in the user's home directory, while NeXTmail separates incoming mail into text and attachments and stores the files in Mailboxes/Active.mbox in the home directory. 

A user who reads mail on a non-NeXT computer, and who then reads mail on a NeXT computer (or vice versa,) won't have access to all their mail messages. Mail messages are stored in different places, depending on which method is used to access mail. Users can do a couple of things to help keep their mail consistent. In some cases, when a user has read mail with standard UNIX mail, the messages can be sent back to /usr/spool/mail with the mail command pre. Your implementation of UNIX mail might use this command, or another like it. Such messages will still be available through NeXTmail. If a user wants to use standard UNIX mail to read messages that are already stored in the NeXT mailbox, a command similar to the following will access the correct file:

mail -f Mailboxes/Active.mbox/mbox

Attachments still aren't available through standard UNIX mail.

Changing Passwords

It's important that users change their password using the master administrative service. If, for example, NetInfo is the master administrative server and the user mary changes her password on a non-NeXT computer, the user account information will be overwritten with her old password the next time pushinfo is executed from the NeXT server. If NetInfo is maintaining administrative data, users should only change their password when logged into a NeXT computer. If some other service is the master, users should only change their password when logged into a non-NeXT computer. 

Delays In Changes

Since administrative data is distributed only periodically, there will be a delay between when a change is made and the new information shows up on the other computers. For example, if the user tom changes his password on a NeXT computer, and then immediately logs into a non-NeXT computer, he will probably need to use his old password. The user account data won't reflect the new password until pushinfo is executed from the NeXT server. This is true of any other administrative changes, such as adding a new user account or deleting a mail alias. 

Using DNS

DNS (Domain Name Service) is a distributed service that provides name resolution, a process that translates host names into Internet addresses. On NeXT computers, host names are resolved first by NetInfo, which is usually all that's required on a NeXT-only network. However, in a mixed network, and especially if you're connecting to the Internet, name resolution may be performed by DNS. Whenever a NeXT computer needs to resolve a host name, a search is made first in NetINfo, then DNS (if it's configured), then NIS (if it's configured).

When you register your Internet address (see Appendix C), you can also register your official domain name. The word ªdomainº in this context refers to a hierarchical naming scheme defined by the DNS. For example, the official domain name for NeXT Computer, Inc. is next.com. The extension .com refers to the generic commercial domain. A more complex domain name is ummts.cc.umich.edu. The extension .edu indicates that this host is in the generic education domain. Moving left, umich indicates the organization (the University of Michigan). Within the umich domain, there is yet another qualifierÐccÐwhich indicates a department (Computing Center). Finally, the first part of the domain name, ummts, is the host name of the computer. 

NeXT Computer as a DNS client

NeXT computers are fully equipped to operate in a DNS environment. To enable DNS, the only step required is to create a file called /etc/resolv.conf. This file has the following format:

domain officialdomain
nameserver ipaddress
nameserver ipaddress
...

The officialdomain parameter is your Internet domain name. The ipaddress parameter is the Internet address of a DNS server (inquire about available DNS servers when you register your Internet address). 

NeXT Computer as a Secondary DNS Server

A secondary DNS server maintains copies of information provided by primary DNS servers. To set up a NeXT computer as a secondary DNS server, follow these steps:

1.	Add the following line to /etc/rc.local:

/usr/etc/named 

2.	Create the file /etc/named.boot containing information similar to the following:

;
; Information to the right of a semicolon is considered a comment by
; named.
;
; directory directoryname. This line species the working directory
; in which named will maintain files.
directory /etc/DNS

; cache . domainname file. This line specifies the location of
; the "root" domain cache. This file is for optimization, and should
; be used to "prime" the cache with the addresses of the root name 
; servers.

cache . root. cache
; secondary  domainname       ipaddr1 ipaddr2 ...   domain.zone.file
; This line specifies that this computer is a secondary server for
; domainname. The Internet addresses indicate what servers should be 
; contacted to obtain this information. The last argument specifies
; the file where this information should be cached.

secondary  microbrain.com       140.211.128.5 140.211.128.7 mb.zone
;
; secondary  network.IN-ADDR.ARPA ipaddr1 ipaddr2 ... domain.rev.file
; This line specifies the location of the inverse address mapping
; information. This is useful for finding a host's name given only
; its Internet address. The network is specified in reverse order.
secondary  0.0.211.140.IN-ADDR.ARPA 140.211.128.5 140.211.128.7 mb.reverse.zone

3.	Create the working directory specified in named.boot (in this example, it's /etc/DNS).

4.	Create the root cache file in the working directory (in this case, /etc/DNS/cache). This file should contain the Internet addresses of root domain DNS servers. It's not absolutely necessary to create this file, but it can improve performance by reducing the amount of searching needed to reach a root domain server. 

The other files named in /etc/named.boot will be created and maintained by named.